Systems and Methods of Updating User Identifiers in an Image-Sharing Environment

ABSTRACT

Computer-implemented methods and systems of updating user identifiers in an image-sharing environment include features for facilitating blocking, permitting, sharing and/or modifying content such as images and videos. User identification vectors providing data representative of a user and information about one or more facial characteristics of the user are broadcasted by a modular computing device. Information about one or more additional characteristics of the user (e.g., body characteristics and/or contextual characteristics) as determined from images of the user obtained by one or more image capture devices are received. An updated user identification vector including the information about one or more additional characteristics of the user is stored at and subsequently broadcasted by the modular computing device.

FIELD

The present disclosure relates generally to utilizing user identifierswithin an image-sharing environment, and more particularly to updatinguser identifiers stored by modular computing devices associated with auser so as to block, permit and/or modify image collection by imagecapture devices.

BACKGROUND

A plethora of known computing devices are currently available forproviding mobile image capture and sharing via a networked communicationenvironment. Such computing devices include conventional cameras, videocameras, and mobile devices including smartphones, smart watches,tablets, laptops and other devices that include one or more integratedimage sensors. Even wearable computing devices, such as life recorderscan contain cameras worn around a user's neck and configured to takepictures of events and other data that occur during a user's course ofdaily action. Images captured with these devices can occur upon promptedinstruction by a user, automatically on a fixed periodic schedule, orupon the sensed occurrence of detected events.

Regardless of how images are captured in an environment, a subsequentdesire often exists to share those images with others. Image sharing canbe done via a number of conventional communication networks such as alocal area network (e.g. intranet), wide area network (e.g. Internet),cellular network, or other image-sharing environment. Prolificopportunities for image collection as well as image sharing results in aneed to address potential privacy concerns of individuals that may bepresent in the images. Some individuals may desire to have access toimages in which they are a subject, while others may desire to block ormodify images in which they are a subject.

SUMMARY

Aspects and advantages of embodiments of the present disclosure will beset forth in part in the following description, or may be learned fromthe description, or may be learned through practice of the embodiments.

One example aspect of the present disclosure is directed to acomputer-implemented method of updating user identifiers in animage-sharing environment. The method can include broadcasting, by atleast one modular computing device, a user identification vectorproviding data representative of a user and information about one ormore facial characteristics of the user. The method can also includereceiving, by the at least one modular computing device, informationabout one or more additional characteristics of the user. Theinformation about one or more additional characteristics of the user canbe determined from images of the user obtained by the one or more imagecapture devices. The method can still further include storing, by the atleast one modular computing device, an updated user identificationvector including the information about one or more additionalcharacteristics of the user, and broadcasting, by the at least onemodular computing device, the updated user identification vector.

Other example aspects of the present disclosure are directed to systems,apparatus, tangible, non-transitory computer-readable media, userinterfaces, memory devices, and electronic devices for updating useridentifiers in an image-sharing environment.

These and other features, aspects, and advantages of various embodimentswill become better understood with reference to the followingdescription and appended claims. The accompanying drawings, which areincorporated in and constitute a part of this specification, illustrateembodiments of the present disclosure and, together with thedescription, serve to explain the related principles.

BRIEF DESCRIPTION OF THE DRAWINGS

Detailed discussion of embodiments directed to one of ordinary skill inthe art are set forth in the specification, which makes reference to theappended figures, in which:

FIG. 1 depicts a modular computing device and an image capture device incommunication according to example aspects of the present disclosure;

FIG. 2 provides an example overview of system components for a modularcomputing device according to example aspects of the present disclosure;

FIG. 3 depicts a first example image before modification according toexample aspects of the present disclosure;

FIG. 4 depicts the first example image of FIG. 3 after modificationaccording to example aspects of the present disclosure;

FIG. 5 depicts a second example image obtained in accordance withexample aspects of the present disclosure; and

FIG. 6 provides a flow diagram of an example method of updating useridentifiers in an image-sharing environment according to example aspectsof the present disclosure.

DETAILED DESCRIPTION

Reference now will be made in detail to embodiments, one or moreexamples of which are illustrated in the drawings. Each example isprovided by way of explanation of the embodiments, not limitation of thepresent disclosure. In fact, it will be apparent to those skilled in theart that various modifications and variations can be made to theembodiments without departing from the scope or spirit of the presentdisclosure. For instance, features illustrated or described as part ofone embodiment can be used with another embodiment to yield a stillfurther embodiment. Thus, it is intended that aspects of the presentdisclosure cover such modifications and variations.

Example aspects of the present disclosure are directed to systems andmethods of updating user identifiers in an image-sharing environment.Within an environment of image collection and sharing, there can be anincreased probability that someone may take photos or videos of someoneelse who does not want to be photographed. People having their photo orvideo taken may also desire to have access to the obtained images inorder to view or later block or modify the images.

The disclosed systems and methods of updating user identifiers canprovide instructive features for facilitating blocking, permitting,sharing and/or modifying content such as images and videos. Suchfeatures can be especially beneficial in environments using modularcomputing devices embodying social, wearable cameras that automaticallycapture images for people. The disclosed features can advantageouslycoordinate selective blocking or permission of obtained images, and alsocan accurately detect individuals whose images are included in capturedcontent. Additional features can help manage communication among modulardevices and image capture devices, and ultimately process images inaccordance with different user preferences.

In general, the disclosed systems and methods of updating useridentifiers include employing a modular computing device to broadcastuser identification vectors providing data representative of a user andinformation about one or more facial characteristics of the user.Information about one or more additional characteristics of the user(e.g., body characteristics and/or contextual characteristics) asdetermined from images of the user obtained by one or more image capturedevices are received. An updated user identification vector includingthe information about one or more additional characteristics of the useris stored at and subsequently broadcasted by the modular computingdevice. The modular computing device may also be an image capture deviceand vice versa. In some examples, the modular computing device isconfigured for functional operation in a position relative to the bodyof the user and the image capture device communicated with by themodular computing device corresponds to a smartphone, smart watch, alaptop, a tablet or another modular computing device.

In more particular examples, the one or more additional characteristicsof the user include body characteristic data defining one or more of thecurrent clothing and/or accessories worn by the user, or current bodyshape, body size or hair color or style characteristics. In otherexamples, the one or more additional characteristics of a user includecontextual characteristics defining the context of an image including auser, such as the current time, location, companions, nearby landmarks,or the like. In still further examples, the one or more additionalcharacteristics of a user include information classifying the emotionalstate of a user or other people in an image (e.g., does this photo show“joy,” “sorrow,” “laughter” or the like). When an image capture devicein proximity to the modular computing device receives the broadcasteduser identification vector, the image capture device may then share oneor more obtained images including the user with the modular computingdevice. Additionally or alternatively, a user identification vector caninclude a privacy request for the user indicating that the user wouldlike to block collection of images that include the user. In this latterinstance, portions of the one or more images corresponding to the usercan be modified in response to the privacy request.

In some embodiments, in order to obtain the benefits of the techniquesdescribed herein, the user may be required to allow the collection andanalysis of information collected by modular devices. For example, insome embodiments, users may be provided with an opportunity to controlwhether programs or features collect such information. If the user doesnot allow collection and use of such signals, then the user may notreceive the benefits of the techniques described herein. The user canalso be provided with tools to revoke or modify consent. In addition,certain information or data can be treated in one or more ways before itis stored or used, so that personally identifiable or other informationis removed.

Referring now to FIGS. 1-6, various specific aspects of example systemsand methods for broadcasting and updating user identifiers as well asrelated coordination of handling images within an image-sharingenvironment are depicted. With more particular reference to FIG. 1, oneor more modular computing devices 100 are provided to gather informationwithin the surrounding environment of a user. Each modular computingdevice 100 can include a housing 102, at least one sensor opening 104and at least one attachment element (not shown). Each sensor opening 104is configured to provide an opening within the housing 102 forcontaining a sensor, such as an image sensor 106 as shown in FIG. 1.Additional description of such sensors as well as additional internalhardware and/or software components within each modular computing device100 is presented later with reference to FIG. 2. One or more attachmentelements provided as part of modular computing device 100 can includefeatures that enable the modular computing device to be configured forfunctional operation in a position relative to the body of a user. Forexample, an attachment strap (e.g., a strap of varied length made out ofstring, metal, leather, or other material) can be provided to create awearable device to be worn around a user's neck, wrist, finger, head,chest or other location relative to the body of a user.

The provision of an image sensor 106 within modular computing device 100enables the modular computing device 100 to function as an image capturedevice for obtaining images including photographic images or video imagesequences. In some environments, collections of modular computingdevices 100 can be provided that accommodate increased opportunities forimage collection. For example, different people within a group can eachwear a modular computing device at a specific event (e.g., a concert) ora specific place (e.g., an amusement park) in order to capture imagesfor remembering and sharing notable events. In another example, acollection of modular computing devices can be placed within aparticular environment (e.g., within a home) to capture images for aspecial occasion like a family gathering. In some environments,additional image capture devices 110 can be provided as an additional oralternative device for capturing images. Image capture device 110 can bea camera, mobile device, smartphone, tablet, laptop, wearable computingdevice or the like that is provided with one or more image sensors forcapturing images and one or more communication modules for sharingimages and related communication information with other devices in anenvironment.

When image capture devices are used in an image collection and sharingenvironment, it should be appreciated that some people in theenvironment may wish to designate particular privacy limitationsrelative to the collection and sharing of such images. For example, auser may prefer to be blocked from any obtained images or may desirethat they have access to any images of them that are obtained by devicesin the area. In other examples, a user could indicate that they onlyauthorize a subset of people or devices to obtain images of them.Regardless of the particular user preferences, various disclosedfeatures are presented for broadcasting information that will assistwith the ultimate implementation of those preferences.

Referring still to FIG. 1, modular computing device 100 can be worn by auser as a wearable device such as a ring or necklace and image capturedevice 110 can be employed by another individual to obtain images in anarea nearby to the user wearing modular computing device 100. Modularcomputing device 100 can be configured to broadcast a basic useridentification vector 120. Basic user identification vector 120 includesbasic data representative of a user to which the modular computingdevice 100 is assigned or programmed to represent. Basic useridentification vector 100 can more particularly include informationabout one or more facial characteristics of the user, referred to hereinas face embeddings. Face embeddings can be an identification vectorcorresponding to a short string of alphanumeric characters (e.g., astring of numbers having some predetermined length) that provide dataabout what a user looks like in a compressed form. In some examples,data representative of a user broadcasted at 120 can additionally oralternatively include one or more images of a user's face. However,identification vectors can be useful in low power communicationapplications, such as when modular computing device is a low powerdevice or a passive device (e.g., one without an active transmittermodule, but that reflects its broadcast information when interrogated byanother device.)

In one non-limiting example, face embeddings provided within the basicuser identification vector 120 can be generated based on learning aEuclidean embedding per image using a deep convolutional network. Such aface embedding network can be trained such that squared L2 distances inthe embedding space directly correspond to face similarity. In otherwords, faces of the same person have small distances and faces ofdistinct people have large distances. Once this embedding has beenproduced, face verification simply involves thresholding the distancebetween two embeddings.

Basic user identification vector 120 may start with face embeddings,with the option of initially or later including additional information(e.g., information defining one or more body characteristics of a user).Information including body characteristics (with or without additionalface characteristics) are referred to herein as person embeddings. Useridentification vectors disclosed herein often include at least faceembeddings because these are durable over long time periods, meaningthat they are unaffected by factors such as but not limited to userpose, haircuts, makeup, hats, environmental lighting and the like.Person embedding, on the other hand, may not reliably track a personfrom day to day (since it is often dominated by user clothes). However,person embedding can have powerful invariance over the timescale of anevent, and be able to identify individuals from behind and from fartheraway than if only a face embedding was employed in user identification.Utilization of both face embeddings and person embeddings can help imagecapture devices collectively catalog all visible faces and all visiblebodies and match them up.

Basic user identification vector 120 can also include a permissionindicator within the broadcasted data. In one example, the permissionindicator corresponds to one character in the string that is programmedto include one of a variety of permission states. One example permissionstate corresponds to a “block” state, which is a privacy requestindicating that the user assigned to modular computing device 120desires to be blocked from any images captured or potentially capturedof the user. Another example permission state corresponds to an “allow”state indicating that the user allows the capture of images that includethe user. Allow states can be full or partial, with partial allowancebeing defined in terms of authorized parties, places, times or otherselective image capture limitations. The permission indications includedwithin basic user identification vector 120 provide instructions on howimage capture device 110 or other image capture devices are authorizedto proceed with captured images containing the user associated withmodular computing device 100.

Permission states can be defined within a user identification vector toaccomplish a variety of customizable interaction among individuals andproximate image capture devices. For example, user identificationvectors can be customized at a particular event where collectivephotography is implemented such that people taking part in an imageswarm can get back photos including themselves. Unidentified people(i.e., one without a modular computing device or assigned useridentification vector) not involved in the image swarm can be blocked bydefault, meaning that photos of the unidentified people will not appearin the collective photography.

The disclosed technology can also be employed to characterize apreviously unidentified person, by adding identification to an existingdevice. For instance, a guest who is not himself taking photos can bephotographed by an event host or device participant using a cooperatingdevice and assigned a user identification vector based on facialcharacteristics identified from the captured image. If that guestdesires to allow himself as a subject in images and/or be a photorecipient who subsequently receives obtained images or links to suchimages, then the permission state within the guest's user identificationvector can be set accordingly to an allow/share state. If the guestdesires to be blocked from captured images, then the permission statewithin the guest's user identification vector can be set to a blockstate. The host device or other modular computing device can then beconfigured to broadcast a user identification vector for the host aswell as any optional guests that are identified using the host device.

Devices that receive basic user identification vector 120 can compareimages (or data defining people identified within images) with the basicuser identification vector 120 to identify images that include the userassociated with modular computing device 100. If the images areidentified as including an image portion corresponding to the user, thenaction can be taken relative to the images in accordance with thepermission state defined by user identification vector 120. For example,if user identification vector 120 indicates that a user desires to beblocked, then images containing the blacklisted user can be modified toremove or distort the portion of the image containing the user. Inanother example, if user identification vector 120 indicates that a userallows image capture and desires to obtain images of them that arecaptured, then modular computing device 100 can receive communicatedinformation from other image capture devices including images or linksto images that are identified as including the user. As such, permissionindicators provided within user identification vector can be useful forboth privacy and sharing applications.

The identification of particular people within images at an imagecapture device (e.g., device 110) can be useful not only for determininghow to implement a permission state, but also in helping to update theuser identification vector. When basic user identification vector 120includes only a face embedding, then information about additionalcharacteristics of the user can be identified from captured images atimage capture device 110 and transmitted back to modular computingdevice 100 via signal 122. In some examples, additional characteristicssignal 122 can include information about additional body characteristicsof the user, including data identifying one or more of a user's clothes,hair, accessories such as hats, scarves, jewelry, purses and the like,body features such as estimated height or estimated size/shapecharacteristics, as well as any number of additional data features.

In other examples, signal 122 can additionally or alternatively includecontextual characteristics of a user. Contextual characteristics caninclude information such as other individuals that the user is with(e.g., other people identified in photos of the user). Contextualcharacteristics can also include information classifying the emotionalstate of a user or other people in an image (e.g., does this photo show“joy,” “sorrow,” “laughter” or the like). Contextual information canalso include geographic information such as the location at time ofcapture or sharing of an image. Geographic information can correspond tospecific latitude/longitude or other coordinates that might be availablein an image geotag. Geographic information can also be coarsened ifdesired to identify broader geographic information such as a blockidentifier, neighborhood identifier, zip code, city, country, continentor the like associated with image capture or sharing. Contextualinformation within signal 122 can also include additionalgeo-connectable features identified within obtained images that canassist with landmark recognition and general location matching acrossmultiple obtained images. Contextual information can also includespecific dates and times of image capture and/or sharing.

The additional information received by signal 122 can then be added tothe basic user identification data including the original faceembedding. In this way, future beacons broadcast from modular computingdevice 100 correspond to updated user identification vector 124. Updateduser identification vector 124 can include face embedding information aswell as body embedding, person embedding, and/or context embeddinginformation. This will enhance subsequent recognition of the userassociated with modular computing device 100 at a distance or frombehind by other image capture devices that receive updated useridentification vector 124.

Referring now to FIG. 2, a schematic overview of example systemcomponents that may be included within one or more modular computingdevices in accordance with the disclosed technology is depicted. Moreparticularly, a modular computing device 200 can include at least onepower module 202, at least one sensor 204, at least one memory device206, at least one processor 208 and at least one communications module210. In some examples, a modular computing device 200 in accordance withthe disclosed technology can be a special purpose electronic device thatincludes a limited subset of components that can operate with electronicefficiency in a generally compact structure. In other examples, modularcomputing device 200 can correspond to an existing device such as asmartphone, laptop, tablet, wearable computing device or the like thatincludes dedicated components such as those illustrated in FIG. 2 thatare used for the specific purposes disclosed herein.

Power module 202 can include any type of energy storage device such as abattery or capacitive device, which may optionally be rechargeable. Insome examples, power module 202 can include a passive energy source suchas one that is capable of rectifying energy received from aninterrogating RF field or electromagnetic field in order to power theother circuitry within modular computing device 200.

One or more sensors 204 also may be provided within modular computingdevice 200. Although multiple sensors may be provided within someexamples of a modular computing device 200, other examples limit thenumber of sensors per modular computing device. Particular examples ofhelpful sensors include one or more image sensors such as a camera andone or more audio sensors such as a microphone.

In some examples, a first sensor 204 corresponding to a camera and asecond sensor 204 corresponding to a microphone will be configured towork together to facilitate selective image and audio capture for thedisclosed embodiments. In some examples, a microphone 204 can be used toidentify instances when audio signals are present in the vicinity of themodular computing device 200 at or above a predetermined thresholddecibel level. In other examples, a microphone 204 can be used toidentify when audio signals are present that include one or morepredetermined sound features such as laughter. In such instances,identification of laughter in audio signals can increase the likelihoodthat an image sensor included within modular computing device 200 willcapture images at that time. Detection of certain audio features such aslaughter could also automatically trigger the capture of audio signals.In other examples, audio capture is only initiated upon manual selectionor triggering by a user. The capture of audio signals can be subject tothe same privacy measures disclosed herein for image capture, includingbut not limited to the use of user identification vectors to block/allowcapture of audio clips and the like.

Data captured by the one or more sensors 204 as well as otherinformation within the modular computing device 200, including the useridentification vectors 120 and 124 can be stored within one or morememory devices 206. The one or more memory devices 206 can include oneor more computer-readable media, including, but not limited to,tangible, non-transitory, computer-readable media, RAM, ROM, harddrives, flash memory, or other memory devices. In some examples, memorydevices 206 can correspond to coordinated databases that are split overmultiple locations or modular computing devices.

The one or more memory devices 206 can also store information accessibleby the one or more processors 208 including instructions that can beexecuted by the one or more processors 208. The one or more processor(s)208 can include any suitable processing device, such as amicroprocessor, microcontroller, integrated circuit, logic device, oneor more central processing units (CPUs) and/or other processing devices.The one or more memory devices 206 can also include data that can beretrieved, manipulated, created, or stored by the one or more processors208.

Instructions stored within the one or more memory devices 206 can helpimplement any of the computer-implemented methods disclosed herein.Instructions can also be stored within memory devices 206 that helpimplement smart operation of the one or more sensors 204 such thatsensors only obtain data when a predetermined event is observed at themodular computing device. For example, pictures are only obtained viaone or more image sensors when movement is detected near the modularcomputing device.

Modular computing device 200 also can include one or more communicationsmodules 210 to facilitate communication from the modular computingdevice 200 to another modular computing device, a cooperating imagecapture device, a remote computing device, a home computing deviceassociated with a particular user, or a network over which communicationwith such devices or other devices can occur. In some examples,communication module 210 includes a light source such as an infrared(IR) or Light Emitting Diode (LED) configured to provide a strobedlighting output for coordinated communication with other modularcomputing devices. In other examples, communications module 210 caninclude a network interface used to communicate with other computingdevices over a short range communications network via one or morecommunication technologies such as but not limited to Wi-Fi, Bluetooth,Zigbee, NFC or other electromagnetic induction technologies. In stillfurther examples, communications module 210 may include a networkinterface for connecting to other types of communications networks suchas a local area network (e.g. intranet), wide area network (e.g.Internet), cellular network, or some combination thereof. Such networkinterface(s) can include any suitable components for interfacing withone more networks, including for example, transmitters, receivers,ports, controllers, antennas, or other suitable components.

Although FIG. 2 illustrates one example of the types of electroniccomponents that might be included within a modular computing device 200,it should be appreciated that other examples might adapt an existingcomputing device to perform the desired functionality of a modularcomputing device as disclosed. For example, the memory within anexisting computing device such as a mobile device, smartphone, tablet,laptop, wearable computing device or the like could be programmed withinstructions that cause the existing computing device to perform thecomputer-implemented methods disclosed herein for use with a modularcomputing device. This might be particularly helpful for adaptingexisting mobile devices such as cellular phones and the like thatalready include the basic components 202-210 of a modular computingdevice such as sensors (phone camera, microphone and/or speaker) as wellas basic battery, memory, processor and communication modules.

Referring now to FIGS. 3-5, additional aspects of image modification aredepicted as examples of action steps taken when a user identificationvector includes a privacy request indicating that the user would like toblock collection of images that include the user. For example, an image300 can be identified as including three individuals, corresponding tothe image portions 302, 304, and 306 respectively. Although imageportions 302, 304, and 306 are illustrated in FIG. 3 as encompassing theentire bodies of the individuals, it should be appreciated that otherexamples identify individuals according to just a portion of their bodysuch as their faces. As such, image portions 302, 304, and 306 mayactually be much smaller for purposes of individual identification.

Image portions 302, 304, and 306 are analyzed to determine whether image300 includes any individuals who may be broadcasting a useridentification vector in accordance with the disclosed examples. Ifmatches are found within image 300 (e.g., by matching face and/or bodyembeddings within a locally broadcasted user identification vector withimage portions 302-306), and one or more of the locally broadcasted useridentification vectors includes a privacy request, then additional stepscan be taken by the device that captured image 300 to modify the image.In some examples, this matching identification can be done in real-timesuch that image capture viewfinders that are preparing to capture animage can overlay an indication within the sensed view of people who areallowing image capture and/or people who are blocking image capture. Ifimage 300 was the real-time view being displayed in a camera viewfinder,this identification could be done via an augmented reality display thatprovides a highlighted overlay or colored outline around selectivepeople identified at image portions 302, 304, and 306, providingpermission state indications to an image capture device user.Indications could also be provided in a real-time augmented realitydisplay to inform an image capture device user whether nearby peoplewould like to receive shared images in which they are subjects.

FIG. 4 depicts an example modification to image 300 that can beimplemented when individuals 302 and 304 both transmit a useridentification vector including a privacy request. The image portions302 and 304 can be modified to distort image 300 so that the individualswithin image portions 302 and 304 are unrecognizable. FIG. 4 shows oneexample of a modified image 400 that is created by blurring otherportions of the image outside of image portion 306. Since the individualwithin original image portion 306 is the only user allowed in a pictureaccording to locally broadcasted user identification vectors, blurringthe area within image 400 that is outside image portion 306′ has theeffect of blurring out the individuals previously located at imageportions 302′ and 304′. Alternative techniques could blur or otherwisemodify just image portions 302 and 304 so that new image portions 302′and 304′ include more localized image blur.

One example technique for modifying image 300 to create modified image400 includes a near field capture technique that simulates image captureusing a narrow depth of field for an image capture device. This nearfield capture technique has the effect of artistically blurringbystanders in an image. This can be accomplished using stereoreconstruction via Structure From Motion (SFM) technology. Thisfacilitates computational constraints on an image capture device to onlycapture nearby (high-parallax) content, thus heavily blurring thebackground. This can be a useful modification technique for objectcapture or for capturing a single person in a crowded environment.

Another example technique for modifying an image in order to effectivelyblock users that send privacy requests in a user identification vectoris to use place-only image capture techniques. An example of an imagecaptured using place-only techniques is depicted in FIG. 5. Thistechnique is useful for capturing an environment without any of thepeople in it. This can be accomplished by using SFM and geometryreconstruction to mask out anything that moves relative to a capturedenvironment, filling in occluded material from other frames that sampledthe same spot. This technique can be used to create people-less images,videos or interactive environments. Person recognition and additionalimage modification can be used to augment this technique when imagesinclude people that have little to no movement during a sampled timespace.

FIG. 6 generally concerns an example computer-implemented method (600)of updating user identifiers in an image-sharing environment. An exampleimage-sharing environment corresponds to one in which modular computingdevices and/or image sharing devices are able to communicate useridentifiers corresponding with face embeddings and customizable userpermission states. A modular computing device can broadcast (602) a useridentification vector providing data representative of a user (e.g.,user name(s), identification number(s), and/or contact information suchas email addresses, phone numbers, and the like) and information aboutone or more facial characteristics of the user. The basic useridentification vector can also include a permission state indicatingdesired levels of image permission associated with obtained images thatcapture the user. Permission states can include a privacy request forthe user indicating that the user would like to block collection ofimages that include the user. Permission states can also include sharingrequests indicating that the user would like to receive access to imagesthat include the user.

The user identification vector broadcasted at (602) can be received byone or more image capture devices that are in the local area near themodular computing device sending the user identification vector. Theseimage capture devices are able to analyze obtained images to determineif they include the user corresponding with the user identificationvector broadcasted at (602). If the user is identified, then images canbe modified in accordance with any privacy requests or relayed inaccordance with any sharing requests. Images including the user can alsobe further analyzed to determine additional helpful information that canhelp further characterize the user and improve the accuracy ofsubsequent identification of the user in other images. These additionalcharacteristics can include one or more body characteristics of the user(e.g., the current clothes and hairstyle of the user), as well ascontextual characteristics of the user (e.g., time, geography, nearbylandmarks or people, emotional classifiers, etc.) These additionalcharacteristics of the user are communicated back to the modularcomputing device, which receives the additional information at (604).

The modular computing device then stores (606) an updated useridentification vector 606 that includes data identifying both theoriginal face characteristics of the user as well as an additionalcharacteristics of the user (e.g., body characteristics and/orcontextual characteristics) received at (604). The updated useridentification vector stored at (606) is then broadcasted by the modularcomputing device at (608) so that subsequent identification of the userwithin obtained images can be improved with the additional informationincluded in the updated user identification vector. Additional steps inmethod (600) can optionally include modifying (610) portions of one ormore images obtained by an image capture device in response to receiptof the user identification vector including a privacy request.Additionally or alternatively, a modular computing device can receive(612) one or more images obtained by one or more image capture deviceslocated in proximity to the at least one modular computing device.Receipt (612) can occur when image capture devices share images inresponse to receipt of a user identification vector including a sharerequest.

It will be appreciated that the term “module” refers to computer logicutilized to provide desired functionality. Thus, a module can beimplemented in hardware, application specific circuits, firmware and/orsoftware controlling a general purpose processor. In one embodiment, themodules are program code files stored on the storage device, loaded intoone or more memory devices and executed by one or more processors or canbe provided from computer program products, for example computerexecutable instructions, that are stored in a tangible computer-readablestorage medium such as RAM, flash drive, hard disk, or optical ormagnetic media. When software is used, any suitable programming languageor platform can be used to implement the module.

The technology discussed herein makes reference to servers, databases,software applications, and other computer-based systems, as well asactions taken and information sent to and from such systems. One ofordinary skill in the art will recognize that the inherent flexibilityof computer-based systems allows for a great variety of possibleconfigurations, combinations, and divisions of tasks and functionalitybetween and among components. For instance, server processes discussedherein may be implemented using a single server or multiple serversworking in combination. Databases and applications may be implemented ona single system or distributed across multiple systems. Distributedcomponents may operate sequentially or in parallel.

While the present subject matter has been described in detail withrespect to specific example embodiments thereof, it will be appreciatedthat those skilled in the art, upon attaining an understanding of theforegoing may readily produce alterations to, variations of, andequivalents to such embodiments. Accordingly, the scope of the presentdisclosure is by way of example rather than by way of limitation, andthe subject disclosure does not preclude inclusion of suchmodifications, variations and/or additions to the present subject matteras would be readily apparent to one of ordinary skill in the art.

What is claimed is:
 1. A computer-implemented method of updating useridentifiers in an image-sharing environment, comprising: broadcasting,by at least one modular computing device, a user identification vectorproviding data representative of a user and information about one ormore facial characteristics of the user, receiving, by the at least onemodular computing device, information about one or more additionalcharacteristics of the user, wherein the information about one or moreadditional characteristics of the user is determined from images of theuser obtained by one or more image capture devices; storing, by the atleast one modular computing device, an updated user identificationvector including the information about one or more additionalcharacteristics of the user; and broadcasting, by the at least onemodular computing device, the updated user identification vector.
 2. Thecomputer-implemented method of claim 1, wherein the information aboutone or more additional characteristics of the user comprises dataidentifying body characteristics of the user including one or more of auser's current clothes, accessories, body shape, body size, and haircharacteristics.
 3. The computer-implemented method of claim 1 or 2,wherein the information about one or more additional characteristics ofthe user comprises data identifying current contextual characteristicsof the user including one or more of a user's current time, location,emotional state, and companions.
 4. The computer-implemented method ofany one of the preceding claims, further comprising receiving, by the atleast one modular computing device, one or more images obtained by oneor more image capture devices located in proximity to the at least onemodular computing devices, wherein the images are received in responseto the one or more image capture devices receiving the broadcasted useridentification vector.
 5. The computer-implemented method of any one ofthe preceding claims, wherein the user identification vector includes aprivacy request for the user indicating that the user would like toblock collection of images that include the user.
 6. Thecomputer-implemented method of claim 5, wherein portions of the one ormore images corresponding to the user are modified in response to theprivacy request.
 7. The computer-implemented method of any one of thepreceding claims, wherein the one or more modular computing devices areconfigured for functional operation in a position relative to the bodyof the user and wherein the image capture device communicated with bythe modular computing device comprises one or more of a smartphone, alaptop, smart watch, and a tablet.
 8. A modular computing device,comprising: one or more processors; and one or more memory devices, theone or more memory devices storing computer-readable instructions thatwhen executed by the one or more processors, cause the one or moreprocessors to perform a method according to any one of the precedingclaims.
 9. One or more tangible, non-transitory computer-readable mediastoring computer-readable instructions that when executed by one or moreprocessors cause the one or more processors to perform a methodaccording to any one of claims 1 to 7.